<?php
class Dao {

	/**
	 * Call this method to get singleton
	 *
	 * @return UserFactory
	 */
	
	
	
	public static function Instance()
	{
		static $inst = null;
		if ($inst === null) {
			$inst = new Dao();
		}
		return $inst;
	}

	/**
	 * Private ctor so nobody else can instance it
	 *
	 */
	private function __construct()
	{
		
	}

	public static function getTeamList(){
		$link=Yii::app()->db;
		$command=$link->createCommand("SELECT id_equipo,nombre FROM equipo order by nombre");
		$dataReader=$command->query();
		$dataReader->bindColumn(1,$id_equipo);
		$dataReader->bindColumn(2,$nombre);
		$equipos= array();
		$team = new Team();
		$team->nombre="Seleccionar Equipo";
		array_push($equipos, $team);
		array_push($equipos,$team);
		while($dataReader->read()!==false)
		{
			$team = new Team();
			$team->id_equipo=$id_equipo;
			$team->nombre=$nombre;
			array_push($equipos, $team);
		}
		return $equipos;
	}
	public static function getAllTimeSeries($id_local,$id_visitante,$cantidadPartidos){
		$sql="select partido.id_campeonato,numFecha,campeonato.nombre,anio,local.nombre as equipoLocal,local.escudo as escudoLocal,goles1,penales1,visitante.nombre as equipoVisitante,visitante.escudo as escudoVisitante,goles2,penales2,partido.id_partido,partido.fecha,partido.NumFecha,partido.fase
		from partido,campeonato
		,(select nombre,escudo from equipo where id_equipo=$id_local) local
		,(select nombre,escudo from equipo where id_equipo=$id_visitante) visitante
		where campeonato.id_campeonato=partido.id_campeonato
		and equipo1=$id_local and equipo2=$id_visitante
		order by campeonato.orden desc";
		$sqlCount="select count(*)
		from partido,campeonato
		,(select nombre,escudo from equipo where id_equipo=$id_local) local
		,(select nombre,escudo from equipo where id_equipo=$id_visitante) visitante
		where campeonato.id_campeonato=partido.id_campeonato
		and equipo1=$id_local and equipo2=$id_visitante
		order by campeonato.orden desc";
		$count=Yii::app()->db->createCommand($sqlCount)->queryScalar();
		$dataProvider=new CSqlDataProvider($sql, array('totalItemCount'=>$count,'pagination'=>array('pageSize'=>20,),));
		return $dataProvider;

	}
	public static function getAllTimeSeriesBothLocal($id_local,$id_visitante,$cantidadPartidos){
		$sql="select id_campeonato,numFecha,tabla.nombre,anio,equipoLocal,escudoLocal,goles1,penales1,equipoVisitante,escudoVisitante,goles2,penales2,id_partido,fecha,NumFecha,fase FROM
		(select partido.id_campeonato,campeonato.nombre,anio,local.nombre as equipoLocal,local.escudo as escudoLocal,visitante.escudo as escudoVisitante,goles1,penales1,visitante.nombre as equipoVisitante,goles2,penales2,partido.id_partido,partido.fecha,partido.NumFecha,partido.fase,orden
		from partido,campeonato
		,(select nombre,escudo from equipo where id_equipo=$id_local) local
		,(select nombre,escudo from equipo where id_equipo=$id_visitante) visitante
		where campeonato.id_campeonato=partido.id_campeonato
		and equipo1=$id_local and equipo2=$id_visitante
		UNION
		select partido.id_campeonato,campeonato.nombre,anio,local.nombre as EquipoLocal,local.escudo as escudoLocal,visitante.escudo as escudoVisitante,goles1,penales1,visitante.nombre as equipoVisitante,goles2,penales2,partido.id_partido,partido.fecha,partido.NumFecha,partido.fase,orden
		from partido,campeonato
		,(select nombre,escudo from equipo where id_equipo=$id_visitante) local
		,(select nombre,escudo from equipo where id_equipo=$id_local) visitante
		where campeonato.id_campeonato=partido.id_campeonato
		and equipo1=$id_visitante and equipo2=$id_local
		) tabla
		order by tabla.orden desc";
		$sqlCount="select count(*) FROM
		(select partido.id_campeonato,campeonato.nombre,anio,local.nombre as equipoLocal,local.escudo as escudoLocal,visitante.escudo as escudoVisitante,goles1,penales1,visitante.nombre as equipoVisitante,goles2,penales2,partido.id_partido,partido.fecha,partido.NumFecha,partido.fase,orden
		from partido,campeonato
		,(select nombre,escudo from equipo where id_equipo=$id_local) local
		,(select nombre,escudo from equipo where id_equipo=$id_visitante) visitante
		where campeonato.id_campeonato=partido.id_campeonato
		and equipo1=$id_local and equipo2=$id_visitante
		UNION
		select partido.id_campeonato,campeonato.nombre,anio,local.nombre as EquipoLocal,local.escudo as escudoLocal,visitante.escudo as escudoVisitante,goles1,penales1,visitante.nombre as equipoVisitante,goles2,penales2,partido.id_partido,partido.fecha,partido.NumFecha,partido.fase,orden
		from partido,campeonato
		,(select nombre,escudo from equipo where id_equipo=$id_visitante) local
		,(select nombre,escudo from equipo where id_equipo=$id_local) visitante
		where campeonato.id_campeonato=partido.id_campeonato
		and equipo1=$id_visitante and equipo2=$id_local
		) tabla
		order by tabla.orden desc";
		$count=Yii::app()->db->createCommand($sqlCount)->queryScalar();
		$dataProvider=new CSqlDataProvider($sql, array('totalItemCount'=>$count,'pagination'=>array('pageSize'=>20,),));
		return $dataProvider;

	}
	
	
	public static function getAllEquipos(){
	$count=Yii::app()->db->createCommand('SELECT count(*) FROM equipo')->queryScalar();
	$sql='SELECT nombre FROM equipo';
	$dataProvider=new CSqlDataProvider($sql, array(
			'totalItemCount'=>$count,
			'sort'=>array(
					'attributes'=>array(
							'id_equipo', 'nombre'
					),
			),
			'pagination'=>array(
					'pageSize'=>10,
			),
	));
	return $dataProvider;
	}
	
	public static function getDetallePartido($id_partido){
		$partido = new Partido();
		$link=Yii::app()->db;
		$command=$link->createCommand("select e1.nombre as local,e2.nombre as visitante, goles1,goles2, e1.escudo as escudolocal,e2.escudo as escudovisitante,detalle,detalle2,penales1,penales2 from partido,equipo e1, equipo e2 where id_partido=:id_partido and e1.id_equipo=equipo1 and e2.id_equipo=equipo2");		
		$command->bindParam(":id_partido",$id_partido,PDO::PARAM_INT);		
		$dataReader=$command->query();
		$dataReader->bindColumn(1,$partido->local);
		$dataReader->bindColumn(2,$partido->visitante);
		$dataReader->bindColumn(3,$partido->golesLocal);
		$dataReader->bindColumn(4,$partido->golesVisitante);
		$dataReader->bindColumn(5,$partido->escudoLocal);
		$dataReader->bindColumn(6,$partido->escudoVisitante);
		$dataReader->bindColumn(7,$partido->detalle);
		$dataReader->bindColumn(8,$partido->detalleExtendido);
		$dataReader->bindColumn(9,$partido->penalesLocal);
		$dataReader->bindColumn(10,$partido->penalesVisitante);
		while($dataReader->read()!==false)
		{}
		return $partido;
	}
	public static function getEquipoById($id){
		$equipo = new Team();
		$link=Yii::app()->db;
		$command=$link->createCommand("select id_equipo,nombre from equipo where id_equipo=:id_equipo");
		$command->bindParam(":id_equipo",$id,PDO::PARAM_INT);
		$dataReader=$command->query();
		$dataReader->bindColumn(1,$equipo->id_equipo);
		$dataReader->bindColumn(2,$equipo->nombre);
		while($dataReader->read()!==false)
		{}
		return $equipo;
	}
	public static function getSintesis($idlocal,$idvisitante,$localia){
		$partido = new Partido();
		$link=Yii::app()->db;
		if ($localia==2){
			$sql = "select equipo1,equipo2,goles1,goles2 from partido where (equipo1=:local and equipo2=:visitante) or (equipo1=:visitante and equipo2=:local)";
		}else{
			$sql = "select equipo1,equipo2,goles1,goles2 from partido where equipo1=:local and equipo2=:visitante";
		}
		$command=$link->createCommand($sql);		
		$command->bindParam(":local",$idlocal,PDO::PARAM_INT);
		$command->bindParam(":visitante",$idvisitante,PDO::PARAM_INT);
		$dataReader=$command->query();
		$dataReader->bindColumn(1,$partido->local);
		$dataReader->bindColumn(2,$partido->visitante);
		$dataReader->bindColumn(3,$partido->golesLocal);
		$dataReader->bindColumn(4,$partido->golesVisitante);
		$pg=0;
		$pe=0;
		$pp=0;
		while($dataReader->read()!==false){
			if ($partido->golesLocal>$partido->golesVisitante){
				if($idlocal==$partido->local)
					$pg=$pg+1;
				else 
					$pp=$pp+1;
			}
			if ($partido->golesLocal==$partido->golesVisitante){
				$pe=$pe+1;
			}
			if ($partido->golesLocal<$partido->golesVisitante){
				if($idlocal==$partido->local)
					$pp=$pp+1;
				else
					$pg=$pg+1;
			}
		}
		$historial["PG"]=$pg;
		$historial["PE"]=$pe;
		$historial["PP"]=$pp;
		$historial["equipo1"]=self::getEquipoById($idlocal)->nombre;
		$historial["equipo2"]=self::getEquipoById($idvisitante)->nombre;
		return $historial;
	}
	public static function getLastMatch($id_local,$cantidadPartidos){		
		$sql="select partido.id_campeonato,numFecha,fecha,id_partido,campeonato.nombre,anio,local.nombre as equipoLocal,local.escudo as escudoLocal,goles1,penales1,
    (select nombre from equipo where id_equipo=equipo2) as equipoVisitante,
	(select escudo from equipo where id_equipo=equipo2) as escudoVisitante,
	goles2,penales2
	from partido,campeonato,(select nombre,escudo from equipo where id_equipo=$id_local) local
	where campeonato.id_campeonato=partido.id_campeonato and equipo1=$id_local
	order by campeonato.orden desc,partido.NumFecha desc";
		$dataProvider=new CSqlDataProvider($sql, array('totalItemCount'=>$cantidadPartidos,'pagination'=>array('pageSize'=>20,),));
		return $dataProvider;

	}
	public static function getLastMatchVisitante($id_visitante,$cantidadPartidos){
		$sql="select partido.id_campeonato,numFecha,fecha,id_partido,campeonato.nombre,anio,visitante.nombre as equipoVisitante,visitante.escudo as escudoVisitante,goles2,penales2,
    (select nombre from equipo where id_equipo=equipo1) as equipoLocal,
	(select escudo from equipo where id_equipo=equipo1) as escudoLocal,
	goles1,penales1
	from partido,campeonato,(select nombre,escudo from equipo where id_equipo=$id_visitante) visitante
	where campeonato.id_campeonato=partido.id_campeonato and equipo2=$id_visitante
	order by campeonato.orden desc,partido.NumFecha desc";
		$dataProvider=new CSqlDataProvider($sql, array('totalItemCount'=>$cantidadPartidos,'pagination'=>array('pageSize'=>20,),));
		return $dataProvider;
	
	}
	public static function getLastMatchNeutral($id_equipo,$cantidadPartidos){
		$sql="select partido.id_campeonato,id_partido,campeonato.nombre,campeonato.anio,local.nombre as equipoLocal,goles1,penales1,visitante.nombre as equipoVisitante,goles2,penales2 
	,local.escudo as escudoLocal,visitante.escudo as escudoVisitante,fecha,numFecha
	from partido,campeonato
	,(select id_equipo,nombre,escudo from equipo) local
	,(select id_equipo,nombre,escudo from equipo) visitante
	where condicion = 'Nuetral'
	and local.id_equipo=partido.equipo1
	and visitante.id_equipo=partido.equipo2
	and partido.id_campeonato=campeonato.id_campeonato
	and (equipo1=$id_equipo or equipo2=$id_equipo)
	order by campeonato.orden desc";
		$dataProvider=new CSqlDataProvider($sql, array('totalItemCount'=>$cantidadPartidos,'pagination'=>array('pageSize'=>20,),));
		return $dataProvider;
	
	}
	public static function getLastMatchTodas($id_equipo,$cantidadPartidos){
		$sql="select partido.id_campeonato,id_partido,campeonato.nombre,campeonato.anio,local.nombre as equipoLocal,goles1,penales1,visitante.nombre as equipoVisitante,goles2,penales2 
	,local.escudo as escudoLocal,visitante.escudo as escudoVisitante,fecha,numFecha
	from partido,campeonato,fase
	,(select id_equipo,nombre,escudo from equipo) local
	,(select id_equipo,nombre,escudo from equipo) visitante
	where local.id_equipo=partido.equipo1
	and fase.id_fase=partido.id_fase
	and visitante.id_equipo=partido.equipo2
	and partido.id_campeonato=campeonato.id_campeonato
	and (equipo1=$id_equipo or equipo2=$id_equipo)
	order by campeonato.orden desc,fase.orden desc,partido.numFecha desc";
		$dataProvider=new CSqlDataProvider($sql, array('totalItemCount'=>$cantidadPartidos,'pagination'=>array('pageSize'=>20,),));
		return $dataProvider;
	
	}
	public static function getSintesisUltimoPartidos($idlocal,$localia,$cantidad){
		$partido = new Partido();
		$link=Yii::app()->db;
		if ($localia==1){
			$sql = "select equipo1,equipo2,goles1,goles2 from partido,campeonato,fase where equipo1=:local and fase.id_fase=partido.id_fase and partido.id_campeonato=campeonato.id_campeonato order by campeonato.orden desc,fase.orden desc,partido.numFecha desc limit $cantidad";
		}else if ($localia==2){
			$sql = "select equipo1,equipo2,goles1,goles2 from partido,campeonato,fase where equipo2=:local and fase.id_fase=partido.id_fase and partido.id_campeonato=campeonato.id_campeonato order by campeonato.orden desc,fase.orden desc,partido.numFecha desc limit $cantidad";
		}else if ($localia==3){
			$sql = "select equipo1,equipo2,goles1,goles2 from partido,campeonato,fase where condicion = 'Nuetral' and equipo1=:local and fase.id_fase=partido.id_fase and partido.id_campeonato=campeonato.id_campeonato order by campeonato.orden desc,fase.orden desc,partido.numFecha desc limit $cantidad";
		}else if ($localia==4){
			$sql = "select equipo1,equipo2,goles1,goles2 from partido,campeonato,fase where (equipo1=:local or equipo2=:local)and fase.id_fase=partido.id_fase and partido.id_campeonato=campeonato.id_campeonato order by campeonato.orden desc,fase.orden desc,partido.numFecha desc limit $cantidad";
		}
		$command=$link->createCommand($sql);
		$command->bindParam(":local",$idlocal,PDO::PARAM_INT);
		$dataReader=$command->query();
		$dataReader->bindColumn(1,$partido->local);
		$dataReader->bindColumn(2,$partido->visitante);
		$dataReader->bindColumn(3,$partido->golesLocal);
		$dataReader->bindColumn(4,$partido->golesVisitante);
		$pg=0;
		$pe=0;
		$pp=0;
		while($dataReader->read()!==false){
			if ($partido->golesLocal>$partido->golesVisitante){
				if($idlocal==$partido->local)
					$pg=$pg+1;
				else
					$pp=$pp+1;
			}
			if ($partido->golesLocal==$partido->golesVisitante){
				$pe=$pe+1;
			}
			if ($partido->golesLocal<$partido->golesVisitante){
				if($idlocal==$partido->local)
					$pp=$pp+1;
				else
					$pg=$pg+1;
			}
		}
		$historial["PG"]=$pg;
		$historial["PE"]=$pe;
		$historial["PP"]=$pp;		
		return $historial;
	}	
	public static function getTorneosByDecada($id_decada){
		$link=Yii::app()->db;
		$command=$link->createCommand("SELECT id_campeonato,anio,nombre FROM campeonato where decada=:id_decada order by orden");
		$command->bindParam(":id_decada",$id_decada,PDO::PARAM_INT);
		$dataReader=$command->query();
		$dataReader->bindColumn(1,$id_campeonato);
		$dataReader->bindColumn(2,$anio);
		$dataReader->bindColumn(3,$nombre);
		$torneos = array();
		while($dataReader->read()!==false)
		{
			$campeonato = new Campeonato();
			$campeonato->id_campeonato=$id_campeonato;
			$campeonato->anio=$anio;
			$campeonato->nombre=$nombre;
			array_push($torneos, $campeonato);
		}
		return $torneos;
	}
	public static function getFasesByTorneo($id_campeonato){
		$link=Yii::app()->db;
		$command=$link->createCommand("select id_fase,nombre,id_campeonato from fase where id_campeonato=:id_campeonato order by orden");
		$command->bindParam(":id_campeonato",$id_campeonato,PDO::PARAM_INT);
		$dataReader=$command->query();
		$dataReader->bindColumn(1,$id_fase);
		$dataReader->bindColumn(2,$nombre);
		$dataReader->bindColumn(3,$id_ca);
		$fases = array();
		while($dataReader->read()!==false)
		{
			$fase = new Fase();
			$fase->id=$id_fase;
			$fase->nombre=$nombre;
			$fase->id_campeonato=$id_ca;			
			array_push($fases, $fase);
		}
		return $fases;
	}
	public static function getFechasByFase($id_fase,$id_campeonato){
		$link=Yii::app()->db;
		$command=$link->createCommand("select distinct numFecha from partido where partido.id_campeonato=:id_campeonato and partido.id_fase=:id_fase order by numFecha");
		$command->bindParam(":id_campeonato",$id_campeonato,PDO::PARAM_INT);
		$command->bindParam(":id_fase",$id_fase,PDO::PARAM_INT);
		$dataReader=$command->query();
		$dataReader->bindColumn(1,$numFecha);
		$fechas = array();
		while($dataReader->read()!==false)
		{			
			array_push($fechas, $numFecha);
		}
		return $fechas;
	}
	public static function getPartidosByFase($id_fase,$id_campeonato){
		$link=Yii::app()->db;
		$command=$link->createCommand("select id_partido,fecha,numFecha,local.nombre as local,goles1,visitante.nombre as visitante,goles2,penales1,penales2 from partido,equipo as local,equipo as visitante where partido.id_campeonato=:id_campeonato and partido.id_fase=:id_fase and partido.equipo1=local.id_equipo and partido.equipo2=visitante.id_equipo order by numFecha");
		$command->bindParam(":id_campeonato",$id_campeonato,PDO::PARAM_INT);
		$command->bindParam(":id_fase",$id_fase,PDO::PARAM_INT);
		$dataReader=$command->query();
		$dataReader->bindColumn(1,$id_partido);
		$dataReader->bindColumn(2,$fecha);
		$dataReader->bindColumn(3,$numFecha);
		$dataReader->bindColumn(4,$local);
		$dataReader->bindColumn(5,$golesLocal);
		$dataReader->bindColumn(6,$visitante);
		$dataReader->bindColumn(7,$golesVisitante);
		$dataReader->bindColumn(8,$penalesLocal);
		$dataReader->bindColumn(9,$penalesVisitante);
		$partidos = array();
		while($dataReader->read()!==false)
		{
			$partido = new Partido();
			$partido->id_partido=$id_partido;
			$partido->fecha=$fecha;
			$partido->numFecha=$numFecha;
			$partido->local=$local;
			$partido->golesLocal=$golesLocal;
			$partido->visitante=$vivitante;
			$partido->golesVisitante=$golesVisitante;
			$partido->penalesLocal=$penalesLocal;
			$partido->penalesVisitante=$penalesVisitante;
			array_push($partidos, $partido);
		}
		return $partidos;}
		
		
	public static function getPartidosByFecha($numFecha,$id_fase,$id_campeonato){
		$link=Yii::app()->db;
		$command=$link->createCommand("select id_partido,fecha,numFecha,local.nombre as local,goles1,visitante.nombre as visitante,goles2,penales1,penales2,local.escudo as escudoLocal,visitante.escudo as escudoVisitante,partido.equipo1 as id_local,partido.equipo2 as id_visitante from partido,equipo as local,equipo as visitante where partido.id_campeonato=:id_campeonato and partido.id_fase=:id_fase and partido.numFecha=:numFecha and  partido.equipo1=local.id_equipo and partido.equipo2=visitante.id_equipo order by numFecha");
		$command->bindParam(":id_campeonato",$id_campeonato,PDO::PARAM_INT);
		$command->bindParam(":id_fase",$id_fase,PDO::PARAM_INT);
		$command->bindParam(":numFecha",$numFecha,PDO::PARAM_INT);
		$dataReader=$command->query();
		$dataReader->bindColumn(1,$id_partido);
		$dataReader->bindColumn(2,$fecha);
		$dataReader->bindColumn(3,$numFecha);
		$dataReader->bindColumn(4,$local);
		$dataReader->bindColumn(5,$golesLocal);
		$dataReader->bindColumn(6,$visitante);
		$dataReader->bindColumn(7,$golesVisitante);
		$dataReader->bindColumn(8,$penalesLocal);
		$dataReader->bindColumn(9,$penalesVisitante);
		$dataReader->bindColumn(10,$escudoLocal);
		$dataReader->bindColumn(11,$escudoVisitante);
		$dataReader->bindColumn(12,$id_local);
		$dataReader->bindColumn(13,$id_visitante);
		$partidos = array();
		while($dataReader->read()!==false)
		{
			$partido = new Partido();
			$partido->id_partido=$id_partido;
			$partido->fecha=$fecha;
			$partido->numFecha=$numFecha;
			$partido->local=$local;
			$partido->golesLocal=$golesLocal;
			$partido->visitante=$vivitante;
			$partido->golesVisitante=$golesVisitante;
			$partido->penalesLocal=$penalesLocal;
			$partido->penalesVisitante=$penalesVisitante;
			$partidoA = array('id_partido'=>$id_partido, 'fecha'=>$fecha,'numFecha'=>$numFecha,'local'=>$local,'golesLocal'=>$golesLocal,'visitante'=>$visitante,'golesVisitante'=>$golesVisitante,'penalesLocal'=>$penalesLocal,'penalesVisitante'=>$penalesVisitante,'escudoLocal'=>$escudoLocal,'escudoVisitante'=>$escudoVisitante,'id_local'=>$id_local,'id_visitante'=>$id_visitante);
			array_push($partidos, $partidoA);
		}
		return $partidos;}
		
		public static function getFaseById($id_fase){
		$fase = new Fase();
		$link=Yii::app()->db;
		$command=$link->createCommand("select id_fase,nombre,orden,id_campeonato,tipo from fase where id_fase=:id_fase");
		$command->bindParam(":id_fase",$id_fase,PDO::PARAM_INT);
		$dataReader=$command->query();
		$dataReader->bindColumn(1,$fase->id);
		$dataReader->bindColumn(2,$fase->nombre);
		$dataReader->bindColumn(4,$fase->id_campeonato);
		$dataReader->bindColumn(5,$fase->tipo);
		while($dataReader->read()!==false)
		{}
		$dataReader->close();
		return $fase;			
		}
		
		public static function getPartidosByFasePlayOff($id_fase){
		$link=Yii::app()->db;
		$command=$link->createCommand("select id_partido,fecha,numFecha,local.nombre as local,goles1,visitante.nombre as visitante,goles2,penales1,penales2,local.escudo as escudoLocal,visitante.escudo as escudoVisitante,playoff.idplayoff,ganador.nombre as ganador from partido,equipo as local,equipo as visitante,equipo as ganador,playoff,fase where fase.id_fase=partido.id_fase and (playoff.ida=id_partido or playoff.vuelta=id_partido) and fase.id_fase=:id_fase and  partido.equipo1=local.id_equipo and partido.equipo2=visitante.id_equipo and ganador.id_equipo=playoff.id_ganador order by playoff.idplayoff,numFecha");		
		$command->bindParam(":id_fase",$id_fase,PDO::PARAM_INT);
		$dataReader=$command->query();
		$dataReader->bindColumn(1,$id_partido);
		$dataReader->bindColumn(2,$fecha);
		$dataReader->bindColumn(3,$numFecha);
		$dataReader->bindColumn(4,$local);
		$dataReader->bindColumn(5,$golesLocal);
		$dataReader->bindColumn(6,$visitante);
		$dataReader->bindColumn(7,$golesVisitante);
		$dataReader->bindColumn(8,$penalesLocal);
		$dataReader->bindColumn(9,$penalesVisitante);
		$dataReader->bindColumn(10,$escudoLocal);
		$dataReader->bindColumn(11,$escudoVisitante);
		$dataReader->bindColumn(12,$idplayoff);
		$dataReader->bindColumn(13,$ganador);
		$partidos = array();
		while($dataReader->read()!==false)
		{
			$partido = new Partido();
			$partido->id_partido=$id_partido;
			$partido->fecha=$fecha;
			if ($numFecha==1) $numFecha = "IDA";
			$partido->numFecha=$numFecha;
			$partido->local=$local;
			$partido->golesLocal=$golesLocal;
			$partido->visitante=$visitante;
			$partido->golesVisitante=$golesVisitante;
			$partido->penalesLocal=$penalesLocal;
			$partido->penalesVisitante=$penalesVisitante;
			$partido->escudoLocal=$escudoLocal;
			$partido->escudoVisitante=$escudoVisitante;
			$partido->id_playoff=$idplayoff;
			$partido->ganador=$ganador;
			$partidoA = array('id_partido'=>$id_partido, 'fecha'=>$fecha,'numFecha'=>$numFecha,'local'=>$local,'golesLocal'=>$golesLocal,'visitante'=>$visitante,'golesVisitante'=>$golesVisitante,'penalesLocal'=>$penalesLocal,'penalesVisitante'=>$penalesVisitante,'escudoLocal'=>$escudoLocal,'escudoVisitante'=>$escudoVisitante,'idplayoff'=>$idplayoff);
			array_push($partidos, $partido);
		}
		return $partidos;
		}
		
		public static function getPosicion($id_fase,$id_equipo){
			$link=Yii::app()->db;
			$command=$link->createCommand("select id_posicion from posiciones where id_fase=:id_fase and id_equipo=:id_equipo");
			$command->bindParam(":id_fase",$id_fase,PDO::PARAM_INT);
			$command->bindParam(":id_equipo",$id_equipo,PDO::PARAM_INT);
			$dataReader=$command->query();
			$dataReader->bindColumn(1,$id_posicion);
			$id=0;
			while($dataReader->read()!==false)
			{$id=$id_posicion;}
			return $id;
		}
		
		public static function updatePosicion($pe,$id_posicion){
			$link=Yii::app()->db;
			$command=$link->createCommand("update posiciones set gc=:pe where id_posicion=:id_posicion");
			$command->bindParam(":pe",$pe,PDO::PARAM_INT);
			$command->bindParam(":id_posicion",$id_posicion,PDO::PARAM_INT);
			$command->execute();			
		}
		
		public static function insertPosicion($id_fase,$id_equipo,$pe){
			$link=Yii::app()->db;
			$command=$link->createCommand("insert into posiciones(id_fase,id_equipo,gc) VALUES (:id_fase,:id_equipo,:pe)");
			$command->bindParam(":id_fase",$id_fase,PDO::PARAM_INT);
			$command->bindParam(":pe",$pe,PDO::PARAM_INT);
			$command->bindParam(":id_equipo",$id_equipo,PDO::PARAM_INT);
			$command->execute();
		}
			
		
		public static function setPosiciones(){
			$link=Yii::app()->db;
			$command=$link->createCommand("select id_equipo,id_fase,GF from golescontra");
			$dataReader=$command->query();
			$dataReader->bindColumn(1,$id_equipo);
			$dataReader->bindColumn(2,$id_fase);
			$dataReader->bindColumn(3,$cant);			
			$partidos = array();
			$dao=Dao::Instance();
			while($dataReader->read()!==false)
			{
				
				$id=$dao->getPosicion($id_fase,$id_equipo);
				if ($id==0){
					$dao->insertPosicion($id_fase, $id_equipo, $cant);
				}else{
					$dao->updatePosicion($cant, $id);
				}
			}
		}
		
public static function getPosicionesByFase($id_fase){
		$link=Yii::app()->db;
		$command=$link->createCommand("select nombre,escudo,pts,pg,pe,pp,gf,gc from posiciones,equipo where posiciones.id_fase=:id_fase and posiciones.id_equipo=equipo.id_equipo order by pts desc,dg desc,gf desc");		
		$command->bindParam(":id_fase",$id_fase,PDO::PARAM_INT);
		$dataReader=$command->query();
		$dataReader->bindColumn(1,$equipo);
		$dataReader->bindColumn(2,$escudo);
		$dataReader->bindColumn(3,$pts);
		$dataReader->bindColumn(4,$pg);
		$dataReader->bindColumn(5,$pe);
		$dataReader->bindColumn(6,$pp);
		$dataReader->bindColumn(7,$gf);
		$dataReader->bindColumn(8,$gc);		
		$posiciones = array();
		while($dataReader->read()!==false)
		{			
			$posicion = array('equipo'=>$equipo, 'escudo'=>$escudo,'pts'=>$pts,'pg'=>$pg,'pe'=>$pe,'pp'=>$pp,'gf'=>$gf,'gc'=>$gc);
			array_push($posiciones, $posicion);
		}
		return $posiciones;
		}
		 
		
		
	
	
}